package com.wyzz.hr.pojo.base;

import java.io.Serializable;
import java.util.Date;

import com.wyzz.hr.pojo.Emphistjobtitle;
import com.wyzz.hr.pojo.Employee;
import com.wyzz.hr.pojo.JobTitle;

public abstract class BaseEmphistjobtitle implements Serializable {

	public BaseEmphistjobtitle() {
		hashCode = 0x80000000;
		initialize();
	}

	public BaseEmphistjobtitle(String id) {
		hashCode = 0x80000000;
		setId(id);
		initialize();
	}

	public BaseEmphistjobtitle(String id, JobTitle ehjtJobtitleNo,
			Employee ehjtEmpNo, Date ehjtValidFrom, Integer ehjtIsLatest) {
		hashCode = 0x80000000;
		setId(id);
		setEhjtJobtitleNo(ehjtJobtitleNo);
		setEhjtEmpNo(ehjtEmpNo);
		setEhjtValidFrom(ehjtValidFrom);
		setEhjtIsLatest(ehjtIsLatest);
		initialize();
	}

	protected void initialize() {
	}

	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
		hashCode = 0x80000000;
	}

	public Date getEhjtValidFrom() {
		return ehjtValidFrom;
	}

	public void setEhjtValidFrom(Date ehjtValidFrom) {
		this.ehjtValidFrom = ehjtValidFrom;
	}

	public Date getEhjtValidTo() {
		return ehjtValidTo;
	}

	public void setEhjtValidTo(Date ehjtValidTo) {
		this.ehjtValidTo = ehjtValidTo;
	}

	public Integer getEhjtIsLatest() {
		return ehjtIsLatest;
	}

	public void setEhjtIsLatest(Integer ehjtIsLatest) {
		this.ehjtIsLatest = ehjtIsLatest;
	}

	public JobTitle getEhjtJobtitleNo() {
		return ehjtJobtitleNo;
	}

	public void setEhjtJobtitleNo(JobTitle ehjtJobtitleNo) {
		this.ehjtJobtitleNo = ehjtJobtitleNo;
	}

	public Employee getEhjtEmpNo() {
		return ehjtEmpNo;
	}

	public void setEhjtEmpNo(Employee ehjtEmpNo) {
		this.ehjtEmpNo = ehjtEmpNo;
	}

	public boolean equals(Object obj) {
		if (null == obj)
			return false;
		if (!(obj instanceof Emphistjobtitle))
			return false;
		Emphistjobtitle emphistjobtitle = (Emphistjobtitle) obj;
		if (null == getId() || null == emphistjobtitle.getId())
			return false;
		else
			return getId().equals(emphistjobtitle.getId());
	}

	public int hashCode() {
		if (0x80000000 == hashCode) {
			if (null == getId())
				return super.hashCode();
			String hashStr = (new StringBuilder()).append(getClass().getName())
					.append(":").append(getId().hashCode()).toString();
			hashCode = hashStr.hashCode();
		}
		return hashCode;
	}

	public String toString() {
		return super.toString();
	}

	public static String REF = "Emphistjobtitle";
	public static String PROP_EHJT_EMP_NO = "ehjtEmpNo";
	public static String PROP_EHJT_VALID_FROM = "ehjtValidFrom";
	public static String PROP_EHJT_VALID_TO = "ehjtValidTo";
	public static String PROP_EHJT_IS_LATEST = "ehjtIsLatest";
	public static String PROP_EHJT_JOBTITLE_NO = "ehjtJobtitleNo";
	public static String PROP_ID = "id";
	private int hashCode;
	private String id;
	private Date ehjtValidFrom;
	private Date ehjtValidTo;
	private Integer ehjtIsLatest;
	private JobTitle ehjtJobtitleNo;
	private Employee ehjtEmpNo;

}
